#pragma once

#include "SFML\Graphics.hpp"
#include "GameObject.h"

/** 
*	The base class for all objects that will be spawned in the grid world, eadible plants etc.. 
*	Things that the agents can interact with
*/

enum ObjectTypes
{
	TypePlant,
	TypeWater
};


class Node;
class WorldObject : public GameObject
{
	public:
		WorldObject();
		~WorldObject();

		virtual void Initialize();
		virtual void Cleanup();
		virtual void Update(float pDeltaTime);

		void SetCurrentNode(Node* pNode){ m_xCurrentNode = pNode; }

		void StartDeletion(){ m_bDelete = true; };
		bool ShouldBeDeleted(){ return m_bDelete; }

	protected:
		Node* m_xCurrentNode;
		ObjectTypes m_eType;
		bool m_bDelete;
};

